/**
 * 
 */
package br.com.sguc.manegedBean;

import java.io.IOException;

import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;

import br.com.sguc.entidade.Anuncio;
import br.com.sguc.entidade.Usuario;
import br.com.sguc.interfaces.AnuncioRemote;

/**
 * @author Jonas Nadolny - 26/10/2013
 *
 */
@ManagedBean
@ViewScoped
public class MenuBean {

	@EJB
	private AnuncioRemote anuncioRemote;
	
	private Usuario usuario;
	
	private boolean meuAnuncio;
	
	public MenuBean() {
		super();
		
		this.meuAnuncio = false;
		
		if (!FacesContext.getCurrentInstance().getExternalContext().getSessionMap().isEmpty()) {
			usuario = (Usuario) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("user");
			if (this.usuario == null) {

//				TODO joga pra fora do sistema
				
			} else {
				
				this.meuAnuncio = (usuario.getPerfil().equalsIgnoreCase("EMPRESA"))? true : false;
			}
		} else {
//			TODO joga para fora do sistema
		}
	
	}
	public String pesquisaInicial(){
		System.out.println("FODEU");
		return null;
//		return "/campeonato/pesquisar_campeonato_incial";
	}
	

	public void meuPerfil(){
		
		
		try {
			if(usuario.getPerfil().equals("EMPRESA")){
				
				FacesContext.getCurrentInstance().getExternalContext().redirect("/SGUCWeb/empresa/editar_empresa.jsf");
			}
			else {
				
				FacesContext.getCurrentInstance().getExternalContext().redirect("/SGUCWeb/organizador/editar_organizador.jsf");
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	public void cadastrarAnuncio(){
		
		try {

			Anuncio anuncio = anuncioRemote.buscarAnuncio(this.usuario.getIdUsuario());
		
			FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("anuncio", anuncio);
			FacesContext.getCurrentInstance().getExternalContext().redirect("/SGUCWeb/anuncio/cadastrar_anuncio.jsf");

		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}


	public boolean isMeuAnuncio() {
		return meuAnuncio;
	}


	public void setMeuAnuncio(boolean meuAnuncio) {
		this.meuAnuncio = meuAnuncio;
	}
	
	public void cleanSession(){
		try {
			
		FacesContext.getCurrentInstance().getExternalContext().getSessionMap().clear();
		FacesContext.getCurrentInstance().getExternalContext().redirect("/SGUCWeb//index.jsf");
		} catch (Exception e) {
			// TODO: handle exception
		}
	}

	public Usuario getUsuario() {
		return usuario;
	}

	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}
	
}
